
package simuri.disambiguation;

import java.util.HashMap;
import simuri.coherence.CoherenceMatrix;
import simuri.utils.Configuration;
import simuri.utils.EntityUriMap;

/**
 * Interface for disambiguation algorithms. This is where the magic happens.
 * @author ngonga
 */
public interface Algorithm {
       /**
     * Computes scores for URI mappings
     * @param similarities 
     * @param c
     * @param aprioriScores
     * @return 
     */
    public EntityUriMap getMapping(EntityUriMap similarities, CoherenceMatrix c, 
            HashMap<String, Double> aprioriScores);
        public EntityUriMap getMapping(EntityUriMap similarities, CoherenceMatrix c, 
            HashMap<String, Double> aprioriScores, Configuration config);
 
}
